//
//  HJCMyQRCodeViewController.swift
//  新浪微博Swift
//
//  Created by 郝俊聪 on 15/5/15.
//  Copyright (c) 2015年 heima. All rights reserved.
//

import UIKit

class HJCMyQRCodeViewController: UIViewController {
    
    @IBOutlet weak var QRCodeView: UIImageView!
    

    override func viewDidLoad() {
        super.viewDidLoad()

        createQRCode()
    }

    func createQRCode(){
    
        //建立一个滤镜
        let qrFilter = CIFilter(name: "CIQRCodeGenerator")
        //重设滤镜的初始值
        qrFilter.setDefaults()
        //通过KVC设置滤镜的内容(需要将字符串转为二进制数据)
        qrFilter.setValue("我是二维码".dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true), forKey: "inputMessage")
        //输出图像(注意，此时生成的二维码尺寸为23*23左右，不清晰)
        let ciImage = qrFilter.outputImage
        
        
        //进一步处理，使用另外一个滤镜--单色，形变滤镜
        let colorFilter = CIFilter(name: "CIFalseColor")
        //重设滤镜的初始值
        colorFilter.setDefaults()
        //开始处理不清楚的图片
        colorFilter.setValue(ciImage, forKey: "inputImage")
        //设置前景色(注意只能用CIColor,使用UIColor会奔溃)
        colorFilter.setValue(CIColor(red: 0, green: 0, blue: 0), forKey: "inputColor0")
        //设置背景色
        colorFilter.setValue(CIColor(red: 1, green: 1, blue: 1), forKey: "inputColor1")
        //放大图片,放大五倍
        let transform = CGAffineTransformMakeScale(5, 5)
        //放大
        let transformIamge = colorFilter.outputImage.imageByApplyingTransform(transform)
        
        
        //用一个imageView接受图片试试效果哈(注意将CIImage转成UIImage)
        QRCodeView.image =  UIImage(CIImage: transformIamge)

    }

   

}
